﻿using Admin.NET.Core;
using System.ComponentModel.DataAnnotations;

namespace Admin.EcsWeb.Service.PlcTag.Dto;

/// <summary>
/// PlcTagService基础输入参数
/// </summary>
public class PlcTagBaseInput
    {
        /// <summary>
        /// TAGNAME
        /// </summary>
        public virtual string TAGNAME { get; set; }
        
        /// <summary>
        /// TAGNUMBER
        /// </summary>
        public virtual decimal TAGNUMBER { get; set; }
        
        /// <summary>
        /// TAGPROPERTY
        /// </summary>
        public virtual string TAGPROPERTY { get; set; }
        
        /// <summary>
        /// ADDRESS
        /// </summary>
        public virtual decimal ADDRESS { get; set; }
        
        /// <summary>
        /// ADDRTYPE
        /// </summary>
        public virtual decimal ADDRTYPE { get; set; }
        
        /// <summary>
        /// DATATYPE
        /// </summary>
        public virtual decimal DATATYPE { get; set; }
        
        /// <summary>
        /// DATATYPEINFO
        /// </summary>
        public virtual decimal DATATYPEINFO { get; set; }
        
        /// <summary>
        /// PLCGROUPNUMBER
        /// </summary>
        public virtual decimal PLCGROUPNUMBER { get; set; }
        
        /// <summary>
        /// READWRITE
        /// </summary>
        public virtual decimal READWRITE { get; set; }
        
        /// <summary>
        /// DBBLOCK
        /// </summary>
        public virtual decimal DBBLOCK { get; set; }
        
        /// <summary>
        /// ISENABLE
        /// </summary>
        public virtual decimal ISENABLE { get; set; }
        
        /// <summary>
        /// ISFLAG
        /// </summary>
        public virtual decimal ISFLAG { get; set; }
        
    }

    /// <summary>
    /// PlcTagService分页查询输入参数
    /// </summary>
    public class PlcTagInput : BasePageInput
    {
        /// <summary>
        /// TAGNUMBER
        /// </summary>
        public decimal TAGNUMBER { get; set; }
        
        /// <summary>
        /// TAGPROPERTY
        /// </summary>
        public string TAGPROPERTY { get; set; }
        
        /// <summary>
        /// PLCGROUPNUMBER
        /// </summary>
        public decimal PLCGROUPNUMBER { get; set; }
        
        /// <summary>
        /// DBBLOCK
        /// </summary>
        public decimal DBBLOCK { get; set; }
        
        /// <summary>
        /// ISENABLE
        /// </summary>
        public decimal ISENABLE { get; set; }
        
    }

    /// <summary>
    /// PlcTagService增加输入参数
    /// </summary>
    public class AddPlcTagInput : PlcTagBaseInput
    {
    }

    /// <summary>
    /// PlcTagService删除输入参数
    /// </summary>
    public class DeletePlcTagInput : BaseIdInput
    {
        /// <summary>
        /// ID
        /// </summary>
        [Required(ErrorMessage = "ID不能为空")]
        public  string Id { get; set; }
        
    }

    /// <summary>
    /// PlcTagService更新输入参数
    /// </summary>
    public class UpdatePlcTagInput : PlcTagBaseInput
    {
        /// <summary>
        /// ID
        /// </summary>
        [Required(ErrorMessage = "ID不能为空")]
        public long ID { get; set; }
        
    }

    /// <summary>
    /// PlcTagService主键查询输入参数
    /// </summary>
    public class QueryByIdPlcTagInput : DeletePlcTagInput
    {

    }
